Dynamically customizing a digital publication

ABSTRACT

A method for dynamically customizing a digital publication includes sequentially presenting content of a digital publication by one or more of visually displaying the content on an electronic display and audibly narrating the content. The method includes detecting a customization tag in the content. The customization tag indicates a portion of the content customizable according to a geographic location. The customization tag is associated with customization content. The customization content is associated with the geographic location. The method includes accessing the customization content associated with the customization tag. The customization content includes one or more of text content, visual content, and audible content. The method includes presenting the customization content at a point in the content indicated by the customization tag.

FIELD

The subject matter disclosed herein relates to a digital publication andmore particularly to dynamically customizing a digital publication.

BACKGROUND Description of the Related Art

Increasingly, books, magazines, and other publications, are becomingavailable in digital form. Instead of only having access to a particularpublication on paper, a user may obtain a digital version of theparticular publication for use with an electronic reader (e-reader)application on a computing device, such as a smartphone, tabletcomputer, electronic reader, or the like.

An e-reader application may present content of a digital publication invarious ways, including audibly narrating text, visually displaying thetext, and the like. Due to the electronic nature of these digitalpublications, they are no longer limited to the words appearing on aprinted page.

BRIEF SUMMARY

A method for dynamically customizing a digital publication includes, inone embodiment, sequentially presenting content of a digital publicationby one or more of visually displaying the content on an electronicdisplay and audibly narrating the content. In one embodiment, the methodincludes detecting a customization tag in the content. The customizationtag may indicate a portion of the content customizable according to ageographic location. The customization tag may be associated withcustomization content. The customization content may be associated withthe geographic location. In one embodiment, the method includesaccessing the customization content associated with the customizationtag. The customization content may include one or more of text content,visual content, and audible content. In one embodiment, the methodincludes presenting the customization content at a point in the contentindicated by the customization tag.

In some embodiments, the geographic location comprises a geographiclocation of a computing device in communication with the electronicdisplay. The computing device may sequentially present the content. Inthis embodiment, the method further includes obtaining the geographiclocation of the computing device. In a further embodiment, obtaining thegeographic location of the computing device further includes obtainingthe geographic location from one or more of a user preference, a GlobalPositioning System (GPS) device in communication with the computingdevice, a mobile phone localization process, and a network incommunication with the computing device.

In one embodiment, the geographic location includes a user preference.The user preference overrides a geographic location of a computingdevice in communication with the electronic display. The computingdevice may sequentially present the content. In one embodiment, thecustomization tag specifies one or more of a text segment, an audioclip, an audio volume, and an audio duration. In some embodiments, thecustomization content comprises non-persistent customization content.The non-persistent customization content may be associated with acurrent geographic location.

In a further embodiment, the current geographic location comprises afirst geographic location. In this embodiment, the method furtherincludes presenting the customization content for the customization tag.The customization content may be associated with the first geographiclocation. In a further embodiment, the method includes detecting thecurrent geographic location change from the first geographic location toa second geographic location different from the first geographiclocation and presenting the customization content for the customizationtag subsequent to detecting the current geographic location change fromthe first geographic location to the second geographic location. Thecustomization content may be associated with the second geographiclocation.

In one embodiment, the customization content comprises persistentcustomization content. The persistent customization content may beassociated with a persistent geographic location. In a furtherembodiment, a current geographic location comprises a first geographiclocation and the persistent geographic location comprises the firstgeographic location. In this embodiment, the method further includespresenting the customization content for the customization tag. Thecustomization content may be associated with the first geographiclocation. In a further embodiment, the method includes detecting thecurrent geographic location change from the first geographic location toa second geographic location different from the first geographiclocation and presenting the customization content for the customizationtag subsequent to detecting the current geographic location change fromthe first geographic location to the second geographic location. Thecustomization content may be associated with the first geographiclocation.

In one embodiment, the method includes searching ahead of a currentpresentation location in the content for the customization tag. Thecurrent presentation location comprises a location in the contentcurrently being presented. In a further embodiment, detecting thecustomization tag in the content further includes detecting thecustomization tag at a location in the content ahead of the currentpresentation location. In a further embodiment, the method includespre-loading the customization content prior to presenting thecustomization content in response to detecting the customization tag ata location in the content ahead of the current presentation location.

In one embodiment, the method includes referencing a plurality of userpreferences wherein the customization content is based at least in partof one or more of the plurality of user preferences. In a furtherembodiment, the method includes determining the plurality of userpreferences based on one or more of audio content stored on a computingdevice and audio content associated with a user's Internet musicaccount. In one embodiment, the customization content includes one of acharacter trait, a character name, a location trait, a location name,weather, a song, and a sound effect.

An apparatus for dynamically customizing a digital publication includes,in one embodiment, a presentation module that sequentially presentscontent of a digital publication by one or more of visually displayingthe content on an electronic display and audibly narrating the content.In one embodiment, the apparatus includes a detection module thatdetects a customization tag in the content. The customization tag mayindicate a portion of the content customizable according to a geographiclocation. The customization tag may be associated with customizationcontent. The customization content may be associated with the geographiclocation. In one embodiment, the apparatus includes an access modulethat accesses the customization content associated with thecustomization tag. The customization content may include one or more oftext content, visual content, and audible content. In one embodiment,the apparatus includes a customization module that presents thecustomization content at a point in the content indicated by thecustomization tag.

In a further embodiment, the geographic location comprises a geographiclocation of a computing device in communication with the electronicdisplay. The computing device, in one embodiment, sequentially presentsthe content and wherein the apparatus further comprises a locationmodule that obtains the geographic location of the computing device. Inone embodiment, the apparatus includes a memory storing one or more ofthe presentation module, the detection module, the access module, andthe customization module and a processor in communication with thememory and the electronic display. The processor may execute one or moreof the presentation module, the detection module, the access module, andthe customization module.

A computer program product comprising a computer readable storage mediumhaving computer readable program code embodied therewith for dynamicallycustomizing a digital publication includes, in one embodiment, computerreadable program code for sequentially presenting content of a digitalpublication by one or more of visually displaying the content on anelectronic display and audibly narrating the content. In one embodiment,the computer program product includes detecting a customization tag inthe content. The customization tag may indicate a portion of the contentcustomizable according to a geographic location. The customization tagmay be associated with customization content. The customization contentmay be associated with the geographic location. In one embodiment, thecomputer program product includes accessing the customization contentassociated with the customization tag. The customization contentincludes one or more of text content, visual content, and audiblecontent. In one embodiment, the computer program product includespresenting the customization content at a point in the content indicatedby the customization tag.

In one embodiment, the computer program product includes searching aheadof a current presentation location in the content for the customizationtag. The current presentation location may comprise a location in thecontent currently being presented. In this embodiment, detecting thecustomization tag in the content further includes detecting thecustomization tag at a location in the content ahead of the currentpresentation location. In one embodiment, the computer program productfurther includes pre-loading the customization content prior topresenting the customization content in response to detecting thecustomization tag at a location in the content ahead of the currentpresentation location.

BRIEF DESCRIPTION OF THE DRAWINGS

In order that the advantages of the embodiments of the invention will bereadily understood, a more particular description of the embodimentsbriefly described above will be rendered by reference to specificembodiments that are illustrated in the appended drawings. Understandingthat these drawings depict only some embodiments and are not thereforeto be considered to be limiting of scope, the embodiments will bedescribed and explained with additional specificity and detail throughthe use of the accompanying drawings, in which:

FIG. 1 is a schematic block diagram illustrating one embodiment ofsystem for dynamically customizing a digital publication in accordancewith the present invention;

FIG. 2 is a schematic block diagram illustrating another embodiment of asystem for dynamically customizing a digital publication in accordancewith the present invention;

FIG. 3 is a schematic block diagram illustrating one embodiment of anapparatus for dynamically customizing a digital publication inaccordance with the present invention;

FIG. 4 is a schematic block diagram illustrating another embodiment ofan apparatus for dynamically customizing a digital publication inaccordance with the present invention;

FIG. 5A is a schematic block diagram illustrating one embodiment of adigital publication with customization tags in accordance with thepresent invention;

FIG. 5B is a schematic block diagram illustrating one embodiment of thedigital publication of FIG. 5A customized with customization content inaccordance with the present invention;

FIG. 5C is a schematic block diagram illustrating another embodiment ofthe digital publication of FIG. 5A customized with customization contentin accordance with the present invention;

FIG. 6 is a schematic flow chart diagram illustrating one embodiment ofa method for dynamically customizing a digital publication in accordancewith the present invention;

FIG. 7 is a schematic flow chart diagram illustrating another embodimentof a method for dynamically customizing a digital publication inaccordance with the present invention; and

FIG. 8 is a schematic flow chart diagram illustrating one embodiment ofa method for presenting customization content in accordance with thepresent invention.

DETAILED DESCRIPTION OF THE INVENTION

References throughout this specification to features, advantages, orsimilar language do not imply that all of the features and advantagesmay be realized in any single embodiment. Rather, language referring tothe features and advantages is understood to mean that a specificfeature, advantage, or characteristic is included in at least oneembodiment. Thus, discussion of the features and advantages, and similarlanguage, throughout this specification may, but do not necessarily,refer to the same embodiment.

Furthermore, the described features, advantages, and characteristics ofthe embodiments may be combined in any suitable manner. One skilled inthe relevant art will recognize that the embodiments may be practicedwithout one or more of the specific features or advantages of aparticular embodiment. In other instances, additional features andadvantages may be recognized in certain embodiments that may not bepresent in all embodiments.

These features and advantages of the embodiments will become more fullyapparent from the following description and appended claims, or may belearned by the practice of embodiments as set forth hereinafter. As willbe appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method, and/or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module,” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Many of the functional units described in this specification have beenlabeled as modules, in order to more particularly emphasize theirimplementation independence. For example, a module may be implemented asa hardware circuit comprising custom VLSI circuits or gate arrays,off-the-shelf semiconductors such as logic chips, transistors, or otherdiscrete components. A module may also be implemented in programmablehardware devices such as field programmable gate arrays, programmablearray logic, programmable logic devices or the like.

Modules may also be implemented in software for execution by varioustypes of processors. An identified module of computer readable programcode may, for instance, comprise one or more physical or logical blocksof computer instructions which may, for instance, be organized as anobject, procedure, or function. Nevertheless, the executables of anidentified module need not be physically located together, but maycomprise disparate instructions stored in different locations which,when joined logically together, comprise the module and achieve thestated purpose for the module.

Indeed, a module of computer readable program code may be a singleinstruction, or many instructions, and may even be distributed overseveral different code segments, among different programs, and acrossseveral memory devices. Similarly, operational data may be identifiedand illustrated herein within modules, and may be embodied in anysuitable form and organized within any suitable type of data structure.The operational data may be collected as a single data set, or may bedistributed over different locations including over different storagedevices, and may exist, at least partially, merely as electronic signalson a system or network. Where a module or portions of a module areimplemented in software, the computer readable program code may bestored and/or propagated on in one or more computer readable medium(s).

The computer readable medium may be a tangible computer readable storagemedium storing the computer readable program code. The computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, holographic,micromechanical, or semiconductor system, apparatus, or device, or anysuitable combination of the foregoing.

More specific examples of the computer readable storage medium mayinclude but are not limited to a portable computer diskette, a harddisk, a random access memory (RAM), a read-only memory (ROM), anerasable programmable read-only memory (EPROM or Flash memory), aportable compact disc read-only memory (CD-ROM), a digital versatiledisc (DVD), an optical storage device, a magnetic storage device, aholographic storage medium, a micromechanical storage device, or anysuitable combination of the foregoing. In the context of this document,a computer readable storage medium may be any tangible medium that cancontain, and/or store computer readable program code for use by and/orin connection with an instruction execution system, apparatus, ordevice.

The computer readable medium may also be a computer readable signalmedium. A computer readable signal medium may include a propagated datasignal with computer readable program code embodied therein, forexample, in baseband or as part of a carrier wave. Such a propagatedsignal may take any of a variety of forms, including, but not limitedto, electrical, electro-magnetic, magnetic, optical, or any suitablecombination thereof. A computer readable signal medium may be anycomputer readable medium that is not a computer readable storage mediumand that can communicate, propagate, or transport computer readableprogram code for use by or in connection with an instruction executionsystem, apparatus, or device. Computer readable program code embodied ona computer readable signal medium may be transmitted using anyappropriate medium, including but not limited to wireline, opticalfiber, Radio Frequency (RF), or the like, or any suitable combination ofthe foregoing

In one embodiment, the computer readable medium may comprise acombination of one or more computer readable storage mediums and one ormore computer readable signal mediums. For example, computer readableprogram code may be both propagated as an electro-magnetic signalthrough a fiber optic cable for execution by a processor and stored onRAM storage device for execution by the processor.

Computer readable program code for carrying out operations for aspectsof the present invention may be written in any combination of one ormore programming languages, including an object oriented programminglanguage such as Java, Smalltalk, C++, PHP or the like and conventionalprocedural programming languages, such as the “C” programming languageor similar programming languages. The computer readable program code mayexecute entirely on the user's computer, partly on the user's computer,as a stand-alone software package, partly on the user's computer andpartly on a remote computer or entirely on the remote computer orserver. In the latter scenario, the remote computer may be connected tothe user's computer through any type of network, including a local areanetwork (LAN) or a wide area network (WAN), or the connection may bemade to an external computer (for example, through the Internet using anInternet Service Provider).

Reference throughout this specification to “one embodiment,” “anembodiment,” or similar language means that a particular feature,structure, or characteristic described in connection with the embodimentis included in at least one embodiment. Thus, appearances of the phrases“in one embodiment,” “in an embodiment,” and similar language throughoutthis specification may, but do not necessarily, all refer to the sameembodiment, but mean “one or more but not all embodiments” unlessexpressly specified otherwise. The terms “including,” “comprising,”“having,” and variations thereof mean “including but not limited to”unless expressly specified otherwise. An enumerated listing of itemsdoes not imply that any or all of the items are mutually exclusiveand/or mutually inclusive, unless expressly specified otherwise. Theterms “a,” “an,” and “the” also refer to “one or more” unless expresslyspecified otherwise.

Furthermore, the described features, structures, or characteristics ofthe embodiments may be combined in any suitable manner. In the followingdescription, numerous specific details are provided, such as examples ofprogramming, software modules, user selections, network transactions,database queries, database structures, hardware modules, hardwarecircuits, hardware chips, etc., to provide a thorough understanding ofembodiments. One skilled in the relevant art will recognize, however,that embodiments may be practiced without one or more of the specificdetails, or with other methods, components, materials, and so forth. Inother instances, well-known structures, materials, or operations are notshown or described in detail to avoid obscuring aspects of anembodiment.

Aspects of the embodiments are described below with reference toschematic flowchart diagrams and/or schematic block diagrams of methods,apparatuses, systems, and computer program products according toembodiments of the invention. It will be understood that each block ofthe schematic flowchart diagrams and/or schematic block diagrams, andcombinations of blocks in the schematic flowchart diagrams and/orschematic block diagrams, can be implemented by computer readableprogram code. The computer readable program code may be provided to aprocessor of a general purpose computer, special purpose computer,sequencer, or other programmable data processing apparatus to produce amachine, such that the instructions, which execute via the processor ofthe computer or other programmable data processing apparatus, createmeans for implementing the functions/acts specified in the schematicflowchart diagrams and/or schematic block diagrams block or blocks.

The computer readable program code may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the schematic flowchart diagramsand/or schematic block diagrams block or blocks.

The computer readable program code may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the program code which executed on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The schematic flowchart diagrams and/or schematic block diagrams in theFigures illustrate the architecture, functionality, and operation ofpossible implementations of apparatuses, systems, methods and computerprogram products according to various embodiments of the presentinvention. In this regard, each block in the schematic flowchartdiagrams and/or schematic block diagrams may represent a module,segment, or portion of code, which comprises one or more executableinstructions of the program code for implementing the specified logicalfunction(s).

It should also be noted that, in some alternative implementations, thefunctions noted in the block may occur out of the order noted in theFigures. For example, two blocks shown in succession may, in fact, beexecuted substantially concurrently, or the blocks may sometimes beexecuted in the reverse order, depending upon the functionalityinvolved. Other steps and methods may be conceived that are equivalentin function, logic, or effect to one or more blocks, or portionsthereof, of the illustrated Figures.

Although various arrow types and line types may be employed in theflowchart and/or block diagrams, they are understood not to limit thescope of the corresponding embodiments. Indeed, some arrows or otherconnectors may be used to indicate only the logical flow of the depictedembodiment. For instance, an arrow may indicate a waiting or monitoringperiod of unspecified duration between enumerated steps of the depictedembodiment. It will also be noted that each block of the block diagramsand/or flowchart diagrams, and combinations of blocks in the blockdiagrams and/or flowchart diagrams, can be implemented by specialpurpose hardware-based systems that perform the specified functions oracts, or combinations of special purpose hardware and computer readableprogram code.

FIG. 1 is a schematic block diagram illustrating one embodiment of asystem 100 for dynamically customizing a digital publication. In thedepicted embodiment, the system 100 includes a computing device 102 incommunication with an electronic display 110 and a speaker 112. Thecomputing device 102 includes a content customization apparatus 104, adigital publication 106, and, in one embodiment, a Global PositioningSystem (GPS) device 108. The content customization apparatus 104presents content of a digital publication 106 and dynamically customizesthe content of the digital publication 106. Specifically, the digitalpublication 106 may include customization tags in the content. Thecustomization tags may indicate customizable portions of the digitalpublication 106.

The content customization apparatus 104 may detect a customization tagin the digital publication 106 and access customization contentassociated with the customization tag. The content customizationapparatus 104 may present the customization content during thepresentation of the digital publication 106, providing a uniqueexperience for the user. In one embodiment, a customization tagindicates a portion of the content customizable according to ageographic location. In this embodiment, the customization contentpresented for a customization tag may be associated with, customizedaccording to, and/or specific to the geographic location.

In one embodiment, the computing device 102 includes a GPS device 108and the content customization apparatus 104 may use an actual geographiclocation (e.g. where the computing device 102 is currently located) fromthe GPS device 108 to select the customization content for presentation.In another embodiment, the content customization apparatus 104 may use auser preference for the geographic location. Certain content of thedigital publication 106 may be specific to a geographic location and maychange each time the content customization apparatus 104 presents thedigital publication 106 for different geographic locations.

For example, if the computing device's 102 current location is Dallas,Tex., the content customization apparatus 104 may access customizationcontent specific to Dallas. Therefore, various customization tags thatcall for customization content involving street names, a city name,weather conditions, clothing, and the like, may be customized forDallas. As a result, a user may experience various versions of thedigital publication 106 depending on the geographic location.

In addition, customization content may also be presented according touser preferences. For example, the content customization apparatus 104may present background music to certain parts of a story based on auser's music preferences. In one embodiment, the content customizationapparatus 104 may present customization content based on elements withinthe digital publication 106. For example, if the digital publication 106is a story that describes a dinner in a French restaurant, the contentcustomization apparatus 104 may play French music while presenting thedigital publication 106. Customization content may include text, soundeffects, music, images, and/or the like.

The computing device 102 may be in communication with an electronicdisplay 110 as depicted. In one embodiment, the content customizationapparatus 104 may present content of the digital publication 106 byvisually displaying the content on the electronic display 110. Forexample, the content customization apparatus 104 may display text orimages on the electronic display 110. The electronic display 110 mayinclude a liquid crystal display (“LCD”) monitor, a plasma monitor, orthe like. The electronic display 110 may be embodied separately from thecomputing device 102 or may be integrated with the computing device 102.

The computing device 102 may be in communication with a speaker 112, orother sound emitting device as depicted. In some embodiments, thecontent customization apparatus 104 may present content of the digitalpublication 106 by audibly narrating the content (e.g. text content)and/or audibly playing music and/or sound effects through the speaker112.

The computing device 102 may include a processor and a memory thatstores computer readable programs. The memory may be embodied byvolatile memory such as dynamic random access memory (“DRAM”), staticrandom access memory (“SRAM”), or other suitable volatile memory. Theprocessor executes the computer readable programs as is well known tothose skilled in the art. The computer readable programs may be tangiblystored in storage in the computing device 102. The storage may include aSolid State Drive (“SSD”), a hard disk drive (“HDD”), an optical storagedevice, a holographic storage device, a micromechanical storage device,or other non-volatile data storage device. The computing device 102 maybe embodied by a server computer, a desktop computer, a laptop computer,a tablet computer, a mobile device, or another computing device 102.

In one embodiment, at least a portion of the content customizationapparatus 104 comprises a computer readable program stored on memory ofthe computing device 102 and executed by a processor of the computingdevice 102. The content customization apparatus 104 may include, is partof, and/or is included in an electronic-reader (e-reader) applicationthat presents digital publications 106. For example, the contentcustomization apparatus 104 may be embodied as a plug-in to an e-readerapplication.

The digital publication 106 may be embodied as a file stored on thecomputing device 102, streamed over a network to the computing device102, or the like. The digital publication 106 may include text content,audible content such as audio and sounds, and/or visual content such asimages or graphics. The digital publication 106 may be a magazine, anewspaper, a novel, a textbook, a children's book, or any other suitablepublication. In one embodiment, an author or producer of the digitalpublication 106 may insert customization tags as described below.Although FIG. 1 depicts a single exemplary digital publication 106, thecomputing device 102 may store, download, and/or otherwise obtain aplurality of digital publications 106.

The content customization apparatus 104, in other embodiments, may bepart of a server accessible by a client through a network. The servermay be part of a cloud computing environment accessible by a client. Oneof skill in the art will recognize other ways of implementing thecontent customization apparatus 104 for access using a computing device102.

FIG. 2 is a schematic block diagram illustrating another embodiment of asystem 200 for dynamically customizing a digital publication 106. FIG. 2includes the computing device 102, the content customization apparatus104, the digital publication 106, and the GPS device 108 of FIG. 1.Moreover, in FIG. 2, the computing device 102 is in communication with anetwork 202 in communication with an audio server 204. The audio server204 includes an audio account 206.

In certain embodiments, the content customization apparatus 104determines user preferences based on audio content associated with theuser's audio account 206 hosted on an audio server 204. Furthermore, inone embodiment, the content customization apparatus 104 retrieves audiocontent from a source external to the computing device 102, such as theaudio server 204, to use as customization content. The audio server 204may be a music streaming service, such as an Internet radio server, andmay include a user's song preferences and/or a user's song listeninghistory as part of the user's audio account 206. In one embodiment, theaudio server 204 may store a user's songs.

The network 202 may include a communications network such as theInternet, a Local Area Network (“LAN”), a Wireless LAN (“WLAN”),multiple LANs communicating over the Internet, or any other similarcommunications network. The network 202 may include hardware such asrouters, switches, cabling, and other communication hardware. The audioserver 204 may host, provide, and/or serve audio content associated witha plurality of audio accounts 206 for a plurality of users. The audioserver 204 may include a processor, a memory that stores computerreadable programs, storage, and the like.

In one embodiment, the content customization apparatus 104 accesses auser's audio account 206 to determine a user's song preferences. Forexample, the content customization apparatus 104 may reference a user'ssong and/or musical genre preferences stored in the user's audio account206 on the audio server 204. In an embodiment in which the audio server204 stores a user's songs, the content customization apparatus 104 mayalso reference a user's songs to determine song/genre preferences. Thecontent customization apparatus 104 may reference a user's song history(e.g. what song's a user has listened to). For example, the contentcustomization apparatus 104 may reference the user's stored songs and/orthe user's song playing history and determine that a user enjoys countrymusic and the content customization apparatus 104 may set a song genrepreference of a user to country music. The content customizationapparatus 104 may log in to the audio account 206 on the audio server204 with a user's login credentials to obtain user preferences and/oraccess the user's song playing history.

In one embodiment, the audio server 204 provides a plurality of soundeffects. The content customization apparatus 104 may access a soundeffect from the audio server 204 for use as customization content duringpresentation of the digital publication 106. In certain embodiments, theaudio server 204 provides a sound effect web service. The contentcustomization apparatus 104 may interface with the sound effect webservice to obtain sound effects for use in customizing content of thedigital publication 106. As described below, the content customizationapparatus 104 may also access songs, sound effects, and other contentstored on the computing device 102 in customizing content.

FIG. 3 is a schematic block diagram illustrating one embodiment of anapparatus 300 for dynamically customizing a digital publication 106. Theapparatus 300 includes the content customization apparatus 104 with apresentation module 302, a detection module 304, an access module 306,and a customization module 308, which are described below.

The presentation module 302, in one embodiment, presents content ofdigital publications 106. The content may include, but is not limitedto, text content, visual content, and/or audible content. Text contentmay include text, visual content may include images, video, graphics,and the like, and audible content may include audio such as spokenwords, music, sound effects, and the like.

The presentation module 302 may present the content by visuallydisplaying the content on an electronic display, audibly narrating thecontent, and/or playing audio or video content. The presentation module302 may present text content by audibly narrating the text, and/orvisually depicted words of the text on the electronic display.Furthermore, the presentation module 302 may present visual content byaudibly describing visual content, by graphically depicting or playingback visual content (such as images or video) on an electronic display110, and the like. The presentation module 302 may present audio contentby playing back audio files of the audio content, audibly narratingaudio content, and the like.

The presentation module 302 may sequentially present the content.Sequentially presenting the content may include moving through thedigital publication 106, presenting content in sequence as it isarranged in the digital publication 106. For example, the presentationmodule 302 may audibly narrate a digital publication 106, sequentiallynarrating the text content of the digital publication 106 in an orderdetermined by an order that the content appears in the digitalpublication 106.

The presentation module 302 may access a digital publication 106 locallystored on a computing device 102 on which the presentation module 302resides. For example, the presentation module 302 may reside on aportable computing device 102 storing a plurality of digitalpublications 106. The presentation module 302, in certain embodiments,may also present streaming digital publication 106 streamed from theInternet or another server separate from a computing device 102 on whichthe presentation module 302 resides.

The detection module 304, in one embodiment, detect customization tagsin content of digital publications 106. A customization tag, in oneembodiment, indicates a portion of the content that is customizable. Acustomization tag may be embodied as a predetermined indicator at aparticular location in the content. In one embodiment, a customizationtag includes text, symbols, or other data to indicate a customizationtag. For example, with text content, a customization tag may be setapart from other content (e.g. text) with predetermined symbols orcharacters (e.g. brackets, ellipses, or the like). In one embodiment, adigital publication 106 includes one or more pre-defined customizationtags. Customization tags may be inserted into a digital publication 106by an author, a publisher, a digital publication producer, and/or thelike. For example, as an author is writing a digital publication 106,the author may, instead of including a specific city name in the text,insert a customization tag to customize the city name.

In one embodiment, a customization tag is associated with customizationcontent. Customization content may be text content, visual content,and/or audible content to be presented at a point in the digitalpublication 106 indicated by a customization tag. For example,customization content may embodied as one or more words, a sound effect,a song, an image, or the like to customize the digital publication 106.In certain embodiments, as described below, the customization contentincludes a character trait, a character name, a location trait, alocation name, weather, and/or the like.

In one embodiment, a customization tag includes a unique identifiersufficient to identify subsequent instances of the customization tag.For example, an author may wish the main characters to visit the samerestaurant on multiple occasions throughout a novel. The customizationtag for the restaurant name may have a unique identifier such that thesame restaurant name would appear in each instance of the customizationtag to maintain consistency in the story.

In one embodiment, a customization tag includes information sufficientto specify customization content for presentation. In certainembodiments, a customization tag specifies specific content to present(e.g. a text segment, a sound effect, or the like), a specific type ofcontent (e.g. a city name), or the like. A customization tag may specifywhether to customize according to geographic location, a story element,a certain genre, mood or type of music, a certain sound effect, or thelike. In one embodiment, a customization tag specifies an audio clip, anaudio volume, and/or an audio duration. For example, a customization tagmay specify that a sound effect of breaking dishes is to play at aparticular volume.

A customization tag may indicate a portion of the content customizableaccording to a geographic location. Furthermore, the customizationcontent associated with the customization tag may be associated with thegeographic location. For example, a customization tag may call forcustomization content for a street name based on a certain geographiclocation, characters with character trait specific to a certaingeographic location, location traits specific to a certain geographiclocation, or the like.

In one embodiment, the geographic location is a geographic location of acomputing device 102 on which the apparatus resides and/or the computingdevice 102 that is in communication with the electronic display 110displaying the content of the digital publication 106. Specifically, thegeographic location may be an actual geographic location of a user (ofthe computing device 102). For example, if a user is in Dallas, Tex.,reading a digital publication 106 on the user's portable computingdevice 102, the geographic location may be Dallas, Tex., thecustomization tag may be inserted in the digital publication 106 in alocation in which a street is named, and the customization content mayinclude a Dallas street name.

The geographic location, in certain embodiments, may becountry-specific, region specific, landmark specific, neighborhoodspecific, or the like. For example, the geographic location may be basedon a particular neighborhood of Dallas, Tex, and customization contentmay be specific to that neighborhood. In another example, the geographiclocation may be landmark specific, such as in a particular forest,mountain range, desert, or the like.

In one embodiment, the geographic location is determined by a userpreference. In one embodiment, the user preference may override ageographic location of the computing device 102. For example, thegeographic location of the computing device 102 (the actual geographiclocation) may be Phoenix, Ariz., but the user preference may be NewYork, N.Y. Therefore, the customization content may be specific to NewYork, N.Y.

The access module 306, in one embodiment, accesses the customizationcontent associated with the customization tag. The access module 306 mayselect customization content for presentation. For example, the accessmodule 306 may select customization content based on user preferences asdescribed below, based on an index of customization tags tocustomization content as described below, based on the geographiclocation and/or parameters in the customization tag, and/or the like.

In one embodiment, the access module 306 uses information from thecustomization tag to select and/or access the customization content. Forexample, if the customization tag calls for an Italian restaurant namespecific to a particular city, the access module 306 may use thegeographic location (actual or user preference) to search customizationcontent for an Italian restaurant name. In one embodiment, thecustomization content is stored locally on the computing device 102 onwhich the apparatus resides. The computing device 102 may store avariety of customization content (e.g. sound effects, places names,character traits, and the like) in a repository for customizing avariety of digital publications 106. In some embodiments, for audiocontent, the access module 306 accesses audio content stored locally ina user's music library on the user's computing device 102. The accessmodule 306 may search the repository for particular text segments (e.g.with place names, character traits, and the like), particular soundeffects, particular songs, and the like, that are specified by thecustomization tag.

In one embodiment, the access module 306 may access the customizationcontent from a location external to the computing device 102. Forexample, the access module 306 may access the customization content fromthe Internet, a server in communication with the computing device 102,another computing device 102, or the like. The access module 306accesses customization content from an audio server 204 such as thatused for an Internet radio service, or the like.

In one embodiment, customization tags and their associated customizationcontent are indexed, creating a relationship between each tag and eachtag's content as described below. In this embodiment, the access module306 may refer to the index and retrieve the customization content calledfor in the index.

The customization module 308, in one embodiment, presents thecustomization content. The customization module 308 may present thecustomization content for a particular customization tag at a point inthe content indicated by the particular customization tag. The point inthe content may be the location occupied by the customization tag andthe customization module 308 substitutes the customization content inplace of the customization tag. For example, if a customization tag is“<geographic city>,” when the presentation module 302 reaches a locationin the content in which the customization tag appears, the customizationmodule 308 presents “Dallas,” in place of the customization tag.Presenting customization content may include visually displaying thecustomization content (graphically depicting words, images, or video),playing audio customization content, audibly narrating the customizationcontent, and/or the like.

In a first example, a user is in New York City. The digital publication106 may be personalized to refer to the Empire State building as a siteor Broadway as a street within the story. In a second example, the userhas specified a favorite sports team as the Dallas Mavericks in the userpreferences. The story may be modified to use the Mavericks team name inthe story if the story includes a basketball/sports team as a storyelement.

In a third example, the user is near Miami Beach. The digitalpublication 106 may be modified to use the Fountain Blue Hotel as thehotel in the digital publication 106. In a fourth example, a userreading a digital publication 106 is on vacation in San Francisco (setas the geographic location in personal preferences or obtained by a GPSas described below). The digital publication 106 is personalized to useGolden Gate Park as the location of a park scene. Sounds during thedigital publication 106 may include cable cars while the story is near astreet or sounds of sea lions while the story is near the water. Whenrock music is required during scenes of the story, the Grateful Deadcould be played (the band is from San Francisco and continues to have alarge following there).

In a fifth example, user is on vacation in Sweden. The main charactersin the digital publication 106 may include features, such as hair colorand eye color, customized to Sweden (e.g. blonde hair and blue eyes).

In one embodiment, customization content may be classified as persistentor non-persistent in relation to a geographic location. Persistentcustomization content may be set to an initial, persistent geographiclocation. If a geographic location changes to a second geographiclocation after the persistent customization content has been set to thefirst geographic location, the customization content may remainassociated with the first geographic location. For example, if a userbegins reading a digital publication 106 while at the airport in Dallas,Dallas being set as the persistent geographic location, and the userflies to Phoenix, Ariz., if the customization content is persistentcustomization content, the customization content will remain associatedwith Dallas.

Non-persistent customization content may be associated with a currentgeographic location. In one embodiment, if a geographic location changesfrom a first geographic location to a second geographic location, thecustomization content subsequent to the change will be associated withthe second geographic location. For example, if a user begins reading adigital publication 106 while at the airport in Dallas, andcustomization content is specific to Dallas, and the user flies toPhoenix, Ariz., the customization content subsequent to the change maybe associated with Phoenix. Whether customization content is persistentor non-persistent may, in various embodiments, be determined by a userpreference, by an author, distributor or producer of the digitalpublication 106, by customization tags (e.g. certain customization tagsmay call for persistent customization content), and/or the like.

FIG. 4 is a schematic block diagram illustrating another embodiment ofan apparatus 400 for dynamically customizing a digital publication 106.The apparatus 400 includes an embodiment of a content customizationapparatus 106 with a presentation module 302, a detection module 304, anaccess module 306, and a customization module 308, which aresubstantially similar to those described in relation to the apparatus300 of FIG. 3. In addition, the embodiment of the content customizationapparatus 106 may include one or more of a user preference module 402, alocation module 404, a search-ahead module 406, and a pre-load module408, which are described below.

The user preference module 402 receives, maintains, and/or referencesuser preferences. These user preferences may include, but are notlimited to a geographic location preference, audio content preferences,music preferences, volume preferences, customization content persistencepreferences, and/or the like.

In one embodiment, the user preference module 402 references userpreferences and the customization content is based at least in part ofone or more of the user preferences. The access module 306 may signalthe user preference module 402 to reference a user's music preferencesfor customization content that includes a song. The user preferencemodule 402 may reference and return the user's music preferences to theaccess module 306 and the access module 306 may select a song as thecustomization content based on the music preferences. For example, auser's music preference may be a preference for country music and theaccess module 306 may select a country song for customization content.In certain embodiments, user preferences may include a preferred modelof car, sports team, food, clothing, or the like, and a digitalpublication 106 may be customized to include such preferences.

In one embodiment, user preferences are entered by a user. In anotherembodiment, the user preference module 402 determines user preferencesbased on audio content, including songs, stored on a computing device102 and/or audio content associated with a user's Internet musicaccount. For example, the user preference module 402 may search thecomputing device 102 for songs and/or song preferences and determinethat the user prefers country music in response to a majority of songson the computing device 102 being country songs.

The location module 404, in one embodiment, obtains the geographiclocation for use with the customization content as described above. Thegeographic location may be an actual geographic location (e.g. of thecomputing device 102 on which the apparatus resides). The locationmodule 404 may obtain the geographic location from a Global PositioningSystem (GPS) device in communication with the computing device 102 as isknown in the art.

In certain embodiments, the location module 404 may obtain thegeographic location from a mobile phone localization process. Forexample, if the computing device 102 is a mobile phone, a mobile phonelocalization process may include using multilateration of radio signalsbetween multiple cellphone radio towers (e.g. cellphone triangulation).Specifically, by comparing the relative signal strength from multiplecellphone towers, a location of a cellphone may be approximated. In oneembodiment, the location module 404 may interface with a cellphoneservice provider and retrieve location data obtained from cellphonetriangulation. In another embodiment, the location module 404 determinesthe device location by identifying a location of a network, such as aLocal Area Network (“LAN”) or Wireless Local Area Network (“WLAN”) withwhich the computing device 102 communicates, and/or the like.

In another embodiment, the location module 404 obtains the geographiclocation from a user preference. For example, the user may have enteredin a current city or a preferred city as a user preference.

The search-ahead module 406, in one embodiment, searches ahead of acurrent presentation location in the content for customization tags. Thecurrent presentation location may be a location in the content currentlybeing presented by the presentation module 302. Therefore, thesearch-ahead module 406 may detect a customization tag at a location inthe content ahead of the current presentation location. The search-aheadmodule 406 may parse text of the digital publication 106, searchingahead in the parsed text for customization tags. In one embodiment, thesearch-ahead module 406 communicates with and/or includes a portion ofthe detection module 304. Searching ahead of the current presentationlocation may allow the pre-load module 408, described below, to pre-loadcustomization content and/or index customization content by associatingcustomization content with customization tags.

The pre-load module 408, in one embodiment, pre-loads customizationcontent for a particular customization tag prior to presenting thecustomization content for the particular customization tag in responseto the search-ahead module 406 detecting the customization tag at alocation in the content ahead of the current presentation location.Pre-loading customization content may include caching customizationcontent (copying customization content to high speed memory ordownloading customization content from the Internet) such that thecustomization module 308 may present the customization content at theappropriate location in the digital publication 106.

In one embodiment, the pre-load module 408 indexes customization tagsand their associated customization content by creating a relationshipbetween each tag and each tag's content. In this embodiment, the accessmodule 306 may refer to the index and retrieve the customization contentcalled for in the index. In one embodiment, the index includes a storagelocation of the customization content.

FIG. 5A is a schematic block diagram illustrating one embodiment of adigital publication 500 with a plurality of customization tags 502. Thedigital publication 500 includes content (e.g. text) 504 and a pluralityof customization tags 502 for customizing various aspects of the storyaccording to a geographic location. In the depicted embodiment, thecustomization tags 502 specify customization of a city, vegetation,clothing, a sports team, and foot wear. The depicted customization tags506 comprise a non-limiting example and the customization tags 502 mayinclude more or less information than that depicted in variousembodiments.

For example, FIG. 5B depicts the digital publication 500 of FIG. 5A,customized with customization content 506 according to the geographiclocation of Phoenix, Arizona. The city name has been customized withcustomization content to Phoenix, the vegetation has been customized tocactuses, the clothing has been customized to a t-shirt and shorts, thefootwear to flip-flops, and the like.

FIG. 5C depicts the digital publication 500 of FIG. 5A, customized withcustomization content 508 according to the geographic location ofManhattan. The city name has been customized with customization contentto Manhattan, the vegetation has been customized to oak trees, theclothing has been customized to a jacket and pants, the footwear toboots, and the like.

FIG. 6 is a schematic flow chart diagram illustrating one embodiment ofa method 600 for dynamically customizing a digital publication 106. Themethod 600 begins and the presentation module 302 sequentially presents602 content of a digital publication 106. The presentation module 302may present the content by visually displaying the content on anelectronic display and/or audibly narrating the content. The detectionmodule 304 detects 604 a customization tag in the content. Thecustomization tag, in one embodiment, indicates a portion of the contentcustomizable according to a geographic location. The customization tagmay be associated with customization content. The customization contentmay be associated with the geographic location.

The access module 306 accesses 606 the customization content associatedwith the customization tag. The customization content includes textcontent, visual content, and/or audible content. The customizationmodule 308 presents 608 the customization content at a point in thecontent indicated by the customization tag. Then the method 600 ends.

FIG. 7 is a schematic flow chart diagram illustrating another embodimentof a method 700 for dynamically customizing a digital publication 106.The method 700 begins and the user preference module 402 references 702user preferences. These user preferences may include, but are notlimited to a geographic location preference, audio content preferences,music preferences, volume preferences, and customization contentpersistence preferences. The location module 404 obtains 704 ageographic location for use in content customization. In one embodiment,the geographic location is a geographic location of a computing device102 that will sequentially present the content and is communication withan electronic display for presentation of the content. In a furtherembodiment, the location module 404 obtains the geographic location ofthe computing device 102 from a Global Positioning System (GPS) device108 in communication with the computing device 102, a mobile phonelocalization process, or a network in communication with the computingdevice 102.

In one embodiment, the location module 404 obtains the geographiclocation by referencing a user preference for the geographic location.The geographic location of the user preference may be consistent withthe geographic location of the computing device 102. However, in oneembodiment, the user preference overrides a geographic location of thecomputing device 102. For example, if the user lives in Dallas, Tex. butprefers to have digital publications 106 customized for New York, theuser preference of New York may override the actual geographic locationof Dallas, Tex. and the location module may obtain New York as thegeographic location.

The presentation module 302 sequentially presents 706 content of adigital publication 106 by visually displaying the content on a displayand/or audibly narrating the content. The search-ahead module 406searches ahead 708 of a current presentation location in the content fora customization tag. For example, the search-ahead module 406 may searchahead a predetermined distance in the digital publication 106 (e.g. apredetermined number of words or a predetermined length of time). If thedetection module 304 does not detect 710 a customization tag, thesearch-ahead module 406 continues to search ahead 708 for acustomization tag. If the detection module 304 detects 710 acustomization tag in the content (e.g. at a location in the contentahead of the current presentation location), the pre-load module 408pre-loads 712 the customization content.

The presentation module 302 reaches 714 the customization tag locationand the access module 306 accesses 716 the customization contentassociated with the customization tag. The customization contentincludes text content, visual content, and/or audible content and may bebased on the geographic location. The customization module 308 presents718 the customization content at a point in the content indicated by thecustomization tag. If there is no more content 720 in the digitalpublication 106, the method 700 ends. Alternatively, the method 700continues with step 706 and the presentation module 302 presents 706 thecontents of the digital publication 106.

FIG. 8 is a schematic flow chart diagram illustrating one embodiment ofa method 800 for presenting customization content. The method 800 beginsand the detection module 304 detects 802 a customization tag in contentof a digital publication 106 being presented by the presentation module302. The customization module 308 presents 804 customization contentassociated with the customization tag. The customization module 308presents customization content associated with a first geographiclocation. In one embodiment, the first geographic location is a currentgeographic location, or a location of a computing device 102 on whichthe digital publication 106 is being presented.

If the location module 404 does not detect 806 a change in the currentgeographic location and the detection module 304 detects 808 asubsequent customization tag, the customization module 308 presents 802customization content associated with the first geographic location forthe subsequent customization tag. Alternatively, if the location module404 detects 806 a change in the current geographic location from thefirst geographic location to a second geographic location different fromthe first geographic location, the customization module 308 determines810 whether the customization content for the customization tag ispersistent customization content or non-persistent customizationcontent.

In one embodiment, the customization content is persistent customizationcontent and the first geographic location is a persistent geographiclocation. If the customization module 308 determines 810 that thecustomization content is persistent customization content, thepresentation module 302 presents 812 customization content associatedwith the first geographic location for the subsequent customization tag,even though the current geographic location has been changed to thesecond geographic location. Then the method 800 ends.

Alternatively, if the customization module 308 determines 810 that thecustomization content is non-persistent customization content, thecustomization module 308 presents 814 customization content associatedwith the second geographic location for the subsequent customization tagand the method 800 ends.

The embodiments may be practiced in other specific forms. The describedembodiments are to be considered in all respects only as illustrativeand not restrictive. The scope of the invention is, therefore, indicatedby the appended claims rather than by the foregoing description. Allchanges which come within the meaning and range of equivalency of theclaims are to be embraced within their scope.

What is claimed is:
 1. A method comprising: sequentially presentingcontent of a digital publication by one or more of visually displayingthe content on an electronic display and audibly narrating the content;detecting a customization tag in the content, the customization tagindicating a portion of the content customizable according to ageographic location, the customization tag associated with customizationcontent, the customization content associated with the geographiclocation; accessing the customization content associated with thecustomization tag, the customization content comprising one or more oftext content, visual content, and audible content; and presenting thecustomization content at a point in the content indicated by thecustomization tag.
 2. The method of claim 1, wherein the geographiclocation comprises a geographic location of a computing device incommunication with the electronic display, the computing devicesequentially presenting the content and wherein the method furthercomprises obtaining the geographic location of the computing device. 3.The method of claim 2, wherein obtaining the geographic location of thecomputing device further comprises obtaining the geographic locationfrom one or more of a user preference, a Global Positioning System (GPS)device in communication with the computing device, a mobile phonelocalization process, and a network in communication with the computingdevice.
 4. The method of claim 1, wherein the geographic locationcomprises a user preference, the user preference overriding a geographiclocation of a computing device in communication with the electronicdisplay, the computing device sequentially presenting the content. 5.The method of claim 1, wherein the customization tag specifies one ormore of a text segment, an audio clip, an audio volume, and an audioduration.
 6. The method of claim 1, wherein the customization contentcomprises non-persistent customization content, the non-persistentcustomization content associated with a current geographic location. 7.The method of claim 6, wherein the current geographic location comprisesa first geographic location, the method further comprising: presentingthe customization content for the customization tag, the customizationcontent associated with the first geographic location; detecting thecurrent geographic location change from the first geographic location toa second geographic location different from the first geographiclocation; and presenting the customization content for the customizationtag subsequent to detecting the current geographic location change fromthe first geographic location to the second geographic location, thecustomization content associated the second geographic location.
 8. Themethod of claim 1, wherein the customization content comprisespersistent customization content, the persistent customization contentassociated with a persistent geographic location.
 9. The method of claim8, wherein a current geographic location comprises a first geographiclocation and wherein the persistent geographic location comprises thefirst geographic location, the method further comprising: presenting thecustomization content for the customization tag, the customizationcontent associated with the first geographic location; detecting thecurrent geographic location change from the first geographic location toa second geographic location different from the first geographiclocation; and presenting the customization content for the customizationtag subsequent to detecting the current geographic location change fromthe first geographic location to the second geographic location, thecustomization content associated with the first geographic location. 10.The method of claim 1, further comprising searching ahead of a currentpresentation location in the content for the customization tag, thecurrent presentation location comprising a location in the contentcurrently being presented, wherein detecting the customization tag inthe content further comprises detecting the customization tag at alocation in the content ahead of the current presentation location. 11.The method of claim 10, further comprising pre-loading the customizationcontent prior to presenting the customization content in response todetecting the customization tag at a location in the content ahead ofthe current presentation location.
 12. The method of claim 1, furthercomprising referencing a plurality of user preferences wherein thecustomization content is based at least in part of one or more of theplurality of user preferences.
 13. The method of claim 12, furthercomprising determining the plurality of user preferences based on one ormore of audio content stored on a computing device and audio contentassociated with a user's Internet music account.
 14. The method of claim1, wherein the customization content comprises one of a character trait,a character name, a location trait, a location name, weather, a song,and a sound effect.
 15. An apparatus comprising: a presentation modulethat sequentially presents content of a digital publication by one ormore of visually displaying the content on an electronic display andaudibly narrating the content; a detection module that detects acustomization tag in the content, the customization tag indicating aportion of the content customizable according to a geographic location,the customization tag associated with customization content, thecustomization content associated with the geographic location; an accessmodule that accesses the customization content associated with thecustomization tag, the customization content comprising one or more oftext content, visual content, and audible content; and a customizationmodule that presents the customization content at a point in the contentindicated by the customization tag.
 16. The apparatus of claim 15,wherein the geographic location comprises a geographic location of acomputing device in communication with the electronic display, thecomputing device sequentially presenting the content and wherein theapparatus further comprises a location module that obtains thegeographic location of the computing device.
 17. The apparatus of claim15, further comprising: a memory storing one or more of the presentationmodule, the detection module, the access module, and the customizationmodule; and a processor in communication with the memory and theelectronic display, the processor executing one or more of thepresentation module, the detection module, the access module, and thecustomization module.
 18. A computer program product comprising acomputer readable storage medium having computer readable program codeembodied therewith, the computer readable program code for: sequentiallypresenting content of a digital publication by one or more of visuallydisplaying the content on an electronic display and audibly narratingthe content; detecting a customization tag in the content, thecustomization tag indicating a portion of the content customizableaccording to a geographic location, the customization tag associatedwith customization content, the customization content associated withthe geographic location; accessing the customization content associatedwith the customization tag, the customization content comprising one ormore of text content, visual content, and audible content; andpresenting the customization content at a point in the content indicatedby the customization tag.
 19. The computer program product of claim 18,further comprising searching ahead of a current presentation location inthe content for the customization tag, the current presentation locationcomprising a location in the content currently being presented, whereindetecting the customization tag in the content further comprisesdetecting the customization tag at a location in the content ahead ofthe current presentation location.
 20. The computer program product ofclaim 19, further comprising pre-loading the customization content priorto presenting the customization content in response to detecting thecustomization tag at a location in the content ahead of the currentpresentation location.